Emmanuele Bassi [Mon, 15 Nov 2021 15:31:35 +0000 (15:31 +0000)]
docs: Enable OpenSearch on our references
By adding the `docs_url` key in the project configuration file,
gi-docgen will generate an OpenSearch XML file, which allows to add
docs.gtk.org/<reference> as a "search engine" in web browsers.
Goran Vidović [Fri, 12 Nov 2021 13:58:59 +0000 (13:58 +0000)]
Update Croatian translation
Goran Vidović [Fri, 12 Nov 2021 13:06:50 +0000 (13:06 +0000)]
Update Croatian translation
Yaron Shahrabani [Thu, 11 Nov 2021 22:30:08 +0000 (22:30 +0000)]
Update Hebrew translation
Yaron Shahrabani [Thu, 11 Nov 2021 22:29:14 +0000 (22:29 +0000)]
Update Hebrew translation
Piotr Drąg [Thu, 11 Nov 2021 13:23:08 +0000 (14:23 +0100)]
Update POTFILES.skip
Benjamin Otte [Thu, 11 Nov 2021 04:39:58 +0000 (04:39 +0000)]
Merge branch 'wip/otte/for-master' into 'master'
label: Don't do more work than necessary
See merge request GNOME/gtk!4149
Benjamin Otte [Thu, 11 Nov 2021 04:21:43 +0000 (05:21 +0100)]
label: Don't do more work than necessary
We only want to determine the size pixel-exact, not pango-unit-exact, so
don't spend lots of time wondering if text is half a pixel or a quarter
pixel wider.
Matthias Clasen [Thu, 11 Nov 2021 00:50:09 +0000 (00:50 +0000)]
Merge branch 'wip/otte/no-errors-ever-again' into 'master'
build: Don't use any -Werror in release builds
Closes #4388
See merge request GNOME/gtk!4148
Benjamin Otte [Wed, 10 Nov 2021 19:01:36 +0000 (20:01 +0100)]
build: Don't use any -Werror in release builds
Do kep them for debug and debugoptimized builds though.
Keeping -Werror flags in release builds causes issues with forward
compatibility, when new compiler releases or different toolchains
suddenly cause those warnings to be emitted during compilation.
While we certainly want those issues to be investigated and fixed, they
should not prevent anyone from building GTK until they are.
Resolves #4388
Quentin PAGÈS [Wed, 10 Nov 2021 18:17:30 +0000 (18:17 +0000)]
Update Occitan translation
(cherry picked from commit
7520524aed0272002b121d520df251ef0ea1c8d8)
Benjamin Otte [Wed, 10 Nov 2021 16:44:56 +0000 (16:44 +0000)]
Merge branch 'wip/otte/for-master' into 'master'
css: Don't crash when color stop offsets descend
Closes #4424
See merge request GNOME/gtk!4143
Benjamin Otte [Wed, 10 Nov 2021 16:26:13 +0000 (17:26 +0100)]
css: Don't crash when color stop offsets descend
Testcase included.
Fixes #4424
Daniel Mustieles [Wed, 10 Nov 2021 10:32:36 +0000 (11:32 +0100)]
Updated Spanish translation
Matthias Clasen [Tue, 9 Nov 2021 20:49:31 +0000 (20:49 +0000)]
Merge branch 'flatpak-build-fix' into 'master'
flatpak: Add pango to manifest
See merge request GNOME/gtk!4142
Matthias Clasen [Tue, 9 Nov 2021 20:25:48 +0000 (15:25 -0500)]
flatpak: Add pango to manifest
We have a tight coupling with pango, whenever new
pango API appears, our build usually breaks. So
just make our flatpak manifests build pango from git.
Benjamin Otte [Tue, 9 Nov 2021 19:49:37 +0000 (19:49 +0000)]
Merge branch 'wip/otte/for-master' into 'master'
gtk-demo: Don't use deprecated librsvg API
See merge request GNOME/gtk!4141
Benjamin Otte [Tue, 9 Nov 2021 19:28:53 +0000 (20:28 +0100)]
gtk-demo: Don't use deprecated librsvg API
New API requires a newer librsvg version, so require that one.
Benjamin Otte [Tue, 9 Nov 2021 18:31:42 +0000 (18:31 +0000)]
Merge branch 'wip/otte/for-master' into 'master'
label: Handle width-chars > text width
See merge request GNOME/gtk!4139
Benjamin Otte [Tue, 9 Nov 2021 16:49:40 +0000 (17:49 +0100)]
label: Handle width-chars > text width
This was broken in wrapping labels.
Testcase included.
Matthias Clasen [Tue, 9 Nov 2021 11:34:37 +0000 (11:34 +0000)]
Merge branch 'wip/jimmac/unfocused-selections' into 'master'
styling: Have unfocused selections
Closes #4393
See merge request GNOME/gtk!4113
Matthias Clasen [Tue, 9 Nov 2021 11:28:35 +0000 (11:28 +0000)]
Merge branch 'master' into 'master'
Fix typos
See merge request GNOME/gtk!4132
Quentin PAGÈS [Tue, 9 Nov 2021 09:45:47 +0000 (09:45 +0000)]
Update Occitan translation
Milo Casagrande [Tue, 9 Nov 2021 08:52:14 +0000 (08:52 +0000)]
Update Italian translation
(cherry picked from commit
3eb1ca3ecbbe4208fc2fb974a25b16a51fdb1b15)
Milo Casagrande [Tue, 9 Nov 2021 08:34:39 +0000 (08:34 +0000)]
Update Italian translation
(cherry picked from commit
4fa318fa194003af9e13199eb3af87b1fd8af86d)
Jonas Ådahl [Tue, 9 Nov 2021 06:56:27 +0000 (06:56 +0000)]
Merge branch 'gdksurface-wayland' into 'master'
Move some members of `GtkWaylandSurface` to `GtkWaylandToplevel`
See merge request GNOME/gtk!3918
Benjamin Otte [Tue, 9 Nov 2021 03:15:00 +0000 (03:15 +0000)]
Merge branch 'wip/otte/for-master' into 'master'
lots of sizing fixes
See merge request GNOME/gtk!4131
Benjamin Otte [Tue, 9 Nov 2021 02:28:29 +0000 (03:28 +0100)]
boxlayout: Fix broken min-size-for-opposite-size
Assume a vbox with 2 wrapping labels saying
Hello World
Hi Ho
being measured for their minimum width for 3 rows of text.
This should be layouted like
Hello
World
Hi Ho
and measured accordingly.
However, previously this was layouted as
Hello World
Hi Ho
with 1.5 lines being assigned to both labels.
That will obviously not compute the above wrapping which clearly
results in a smaller min width.
A reftest testing exactly this was included.
Benjamin Otte [Tue, 9 Nov 2021 00:59:08 +0000 (01:59 +0100)]
boxlayout: Split loop into if statmement
Turns it into 2 loops, one for the homogeneous part and one for the
complicated part.
Benjamin Otte [Mon, 8 Nov 2021 16:49:15 +0000 (17:49 +0100)]
boxlayout: Don't listen to comments
... when they are wrong.
Instead, remove them.
Or in other words: GTK4 does not have a fill child property anymore, so
we don't need to run the measuring loop above to determine the size.
Benjamin Otte [Sat, 6 Nov 2021 17:26:41 +0000 (18:26 +0100)]
Revert "sizerequest: Only check reported baselines if requested"
This reverts commit
cf7fa931d380c6d205478c87f0f3973f496f9d2a.
We store the baseline in the cache and we do not know if baselines might
be queried in the future. So always store them.
No reftest because I don't know how to write one.
premature optimization == √😈
Benjamin Otte [Sat, 6 Nov 2021 15:39:01 +0000 (16:39 +0100)]
demos: Update for climate change and Covid
Benjamin Otte [Sat, 6 Nov 2021 15:25:11 +0000 (16:25 +0100)]
label: max-width-chars should be ignored sometimes
When a widget is neither wrappable nor ellipsizable, we cannot modify
the label to fit into any size. So we cannot respect max-width-chars.
Benjamin Otte [Sat, 6 Nov 2021 15:17:59 +0000 (16:17 +0100)]
label: max-width-chars has no effect on smaller text
Having a short text and a large max-width-chars should request the
natural width of the text, not the limit from max-width-chars.
This caused huge message dialogs.
Reftests added.
Ian Douglas Scott [Fri, 3 Sep 2021 23:37:56 +0000 (16:37 -0700)]
gdk/wayland/surface: Remove unused argument
Ian Douglas Scott [Fri, 3 Sep 2021 22:16:59 +0000 (15:16 -0700)]
gdk/wayland/surface: Move `*idle_inhibitor*` to `GdkWaylandToplevel`
Ian Douglas Scott [Fri, 3 Sep 2021 21:58:18 +0000 (14:58 -0700)]
gdk/wayland/surface: Move `*exported` to `GdkWaylandToplevel`
Ian Douglas Scott [Fri, 3 Sep 2021 21:37:52 +0000 (14:37 -0700)]
gdk/wayland/surface: Move `server_decoration` to `GdkWaylandToplevel`
Jordi Mas i Hernandez [Mon, 8 Nov 2021 20:35:15 +0000 (20:35 +0000)]
Update Catalan translation
Jordi Mas i Hernandez [Mon, 8 Nov 2021 19:58:52 +0000 (19:58 +0000)]
Update Catalan translation
Matthias Clasen [Mon, 8 Nov 2021 19:39:55 +0000 (19:39 +0000)]
Merge branch 'small-caps' into 'master'
Handle new pango api
See merge request GNOME/gtk!4137
Matthias Clasen [Mon, 8 Nov 2021 13:10:33 +0000 (08:10 -0500)]
Bump the pango requirement to 1.49.3
Required for new PangoVariant enumeration values.
Matthias Clasen [Mon, 8 Nov 2021 13:08:19 +0000 (08:08 -0500)]
css: Change the way case variants are handled
Instead of translating font-variant-caps directly
to OpenType features, translate them to a PangoVariant,
now that that enumeration reflects all the css values.
This allows pango to emulate Small Caps for fonts that
don't support the OpenType feature.
Matthias Clasen [Mon, 8 Nov 2021 13:07:35 +0000 (08:07 -0500)]
Handle new pango api
The PangoVariant enumeration has gained new values
to match css. Handle those in switches.
Matthias Clasen [Fri, 5 Nov 2021 22:54:06 +0000 (18:54 -0400)]
textview: Don't leave embedded children behind
When scrolling embedded widgets out of view,
they sometimes get left behind because we don't
reallocated them. To avoid that, move _all_ children
out of view in size_allocate, and let the current
child allocation plumbing move the visible ones
back in place.
Matthias Clasen [Fri, 5 Nov 2021 19:37:52 +0000 (15:37 -0400)]
Remove a confusing comment
It talks about propagating to unanchored children,
but then iterates over anchored_children. That does
not add up.
Matthias Clasen [Fri, 5 Nov 2021 19:26:27 +0000 (15:26 -0400)]
gtk-demo: Avoid a missing icon
The hypertext demo was using an icon that we no longer
include in our embedded icon theme. Use a different one.
Luca Bacci [Mon, 8 Nov 2021 18:55:07 +0000 (18:55 +0000)]
Merge branch 'forward-port-mr-3931-to-gtk4' into 'master'
Remove the GdkWin32 global screen offset
Closes #4348 and #1477
See merge request GNOME/gtk!4104
Hugo Carvalho [Mon, 8 Nov 2021 11:27:19 +0000 (11:27 +0000)]
Update Portuguese translation
Daniel Mustieles [Mon, 8 Nov 2021 09:32:50 +0000 (10:32 +0100)]
Updated Spanish translation
Emmanuele Bassi [Sun, 7 Nov 2021 23:40:14 +0000 (23:40 +0000)]
Merge branch 'ebassi/for-master' into 'master'
docs: Fix typo in link
See merge request GNOME/gtk!4135
Emmanuele Bassi [Sun, 7 Nov 2021 23:23:36 +0000 (23:23 +0000)]
docs: Fix typo in link
Hugo Carvalho [Sun, 7 Nov 2021 21:30:40 +0000 (21:30 +0000)]
Update Portuguese translation
Hugo Carvalho [Sun, 7 Nov 2021 21:27:49 +0000 (21:27 +0000)]
Update Portuguese translation
Emmanuele Bassi [Sun, 7 Nov 2021 19:08:16 +0000 (19:08 +0000)]
Merge branch 'ebassi/docs-link-fixes' into 'master'
docs: Fix wrong fragments in type links
See merge request GNOME/gtk!4134
Emmanuele Bassi [Sun, 7 Nov 2021 18:22:10 +0000 (18:22 +0000)]
docs: Fix wrong fragments in type links
Due to a bug in gi-docgen we're not getting a warning if a fragment to a
type does not match the actual type, and we're generating a broken link.
See: https://gitlab.gnome.org/GNOME/gi-docgen/-/merge_requests/120
Emmanuele Bassi [Sun, 7 Nov 2021 18:21:28 +0000 (18:21 +0000)]
Merge branch 'these-are-flags' into 'master'
docs: Tag Gdk.ModifierType as flags
See merge request GNOME/gtk!4133
Luca Bacci [Fri, 29 Oct 2021 16:39:52 +0000 (18:39 +0200)]
GdkWin32: Remove the global screen offset
Removes the _gdk_offset_x / _gdk_offset_y variables,
as today are not needed anymore.
Luca Bacci [Fri, 29 Oct 2021 15:54:10 +0000 (17:54 +0200)]
GdkWin32: Use a signed integral type for the DPI scale
Marco Melorio [Sun, 7 Nov 2021 17:14:15 +0000 (18:14 +0100)]
docs: Tag Gdk.ModifierType as flags
Hodong Kim [Sun, 7 Nov 2021 07:48:39 +0000 (16:48 +0900)]
Fix typos
Yuri Chornoivan [Sat, 6 Nov 2021 04:16:55 +0000 (04:16 +0000)]
Update Ukrainian translation
Benjamin Otte [Sat, 6 Nov 2021 03:54:08 +0000 (03:54 +0000)]
Merge branch 'wip/otte/for-master' into 'master'
boxlayout: Be more careful with what to consider natural size
See merge request GNOME/gtk!4129
Benjamin Otte [Sat, 6 Nov 2021 02:38:03 +0000 (03:38 +0100)]
reftests: Add reftest for last 2 issues
Use a label that is long enough to require wrapping and force it into a
hardcoded width. Use a sentence where all the words have the same size
to not get unwanted wrapping behavior.
Also append a 2nd row to check that the first row gets the proper height
allocated.
Found by Marco Melorio.
Benjamin Otte [Sat, 6 Nov 2021 02:15:04 +0000 (03:15 +0100)]
label: Don't deduce label width from logical rect
The width of a logical rect after line breaking is sometimes not
wide enough to cause line breaking to break at the exact same points.
(Is that by design or a bug in Pango? I don't know.)
So don't use the width, and only relyon values we actually set to
pango_layout_set_width().
Benjamin Otte [Fri, 5 Nov 2021 23:56:11 +0000 (00:56 +0100)]
boxlayout: Be more careful with what to consider natural size
Don't just use the natural size as the max size, the natural size
is the ideal size, not necessarily the maximum size.
Also check the nat size for opposite min size.
Matthias Clasen [Fri, 5 Nov 2021 23:08:56 +0000 (23:08 +0000)]
Merge branch 'remove_some_unused_declarations' into 'master'
remove some unused declarations
See merge request GNOME/gtk!4125
Matthias Clasen [Fri, 5 Nov 2021 23:08:28 +0000 (23:08 +0000)]
Merge branch 'wip/baedert/for-master' into 'master'
paned: Don't pass values < -1 to gtk_widget_measure()
Closes #4404
See merge request GNOME/gtk!4126
Benjamin Otte [Fri, 5 Nov 2021 22:11:00 +0000 (22:11 +0000)]
Merge branch 'wip/otte/for-master' into 'master'
Revert "label: Never measure more than max-width-chars"
Closes #4399
See merge request GNOME/gtk!4120
Benjamin Otte [Fri, 5 Nov 2021 19:51:00 +0000 (20:51 +0100)]
picture: Setting can-shrink requires a resize
So queue one.
Matthias Clasen [Fri, 5 Nov 2021 19:41:05 +0000 (19:41 +0000)]
Merge branch 'yurchor-master-patch-77064' into 'master'
Fix minor typo: Unsupportd -> Unsupported
See merge request GNOME/gtk!4127
Benjamin Otte [Fri, 5 Nov 2021 19:30:49 +0000 (20:30 +0100)]
boxlayout: Compute opposite size properly
For size -1 in the opposite orientation, GtkBoxLayout used to measure
the children based on their min size in the box's orientation instead of
-1. That wasn't really intended, but was a side effect of how the sizing
code did (not) distribute extra size above the minimum size.
This is clearly not what we want.
What we want is measuring the orientation as is for size -1. Then we
want to just take the maximum of all children and use that.
A reftest is incldued that ensures a vbox wraps a label just like an
hbox does.
Benjamin Otte [Thu, 4 Nov 2021 14:56:37 +0000 (15:56 +0100)]
label: Redo measure() code
The old code couldn't properly do height-for-width because it only
computed the widest and smallest layout instead of looking at the actual
passed in for-size.
The label-sizing reftest has been adapted as the label code is now smart
enough to always display the whole text and no longer requests a too
small width-for-single-row when wrapping.
Yuri Chornoivan [Fri, 5 Nov 2021 18:46:16 +0000 (18:46 +0000)]
Update Ukrainian translation
Yuri Chornoivan [Fri, 5 Nov 2021 18:42:20 +0000 (18:42 +0000)]
Fix minor typo: Unsupportd -> Unsupported
Matthias Clasen [Fri, 5 Nov 2021 18:34:02 +0000 (18:34 +0000)]
Merge branch 'wip/carlosg/no-ping-serials-for-input' into 'master'
gdk/wayland: Do not use xdg_wm_base.ping serials as "user input" serials
See merge request GNOME/gtk!4122
Yuri Chornoivan [Fri, 5 Nov 2021 18:31:16 +0000 (18:31 +0000)]
Update Ukrainian translation
Timm Bäder [Fri, 5 Nov 2021 16:41:08 +0000 (17:41 +0100)]
paned: Don't pass values < -1 to gtk_widget_measure()
Fixes #4404
Caolán McNamara [Fri, 5 Nov 2021 14:03:47 +0000 (14:03 +0000)]
remove some unused declarations
Carlos Garnacho [Thu, 4 Nov 2021 13:40:21 +0000 (14:40 +0100)]
gdk/wayland: Do not use xdg_wm_base.ping serials as "user input" serials
Ping/pong serials are not meant to be interpreted as user input serials
(e.g. those given back later to the compositor on grabs). As a matter
of fact, Mutter uses a different count (i.e. timestamps) in these, so
using these serials may confuse the compositor into denying certain
operations like DnD.
Benjamin Otte [Thu, 4 Nov 2021 12:28:45 +0000 (13:28 +0100)]
Revert "label: Never measure more than max-width-chars"
This reverts commit
ba44e7a228534ff066694ad97d25eaa23ec5f3af.
The change was meant to revert to old GTK3 behavior but it actually
broke new GTK4 behavior that is in use where max-width-chars is used to
determine an ideal size, but where we don't want to limit the width to
that size.
So what happens is the reintroduction of GTK3-style lots of whitepsace
bugs, and we really don't want those.
We also don't want to break backwards compat if we can avoid it.
So let's revert this.
The reftest that was made for this purpose has been adapted.
Fixes #4399
Matthias Clasen [Thu, 4 Nov 2021 18:11:40 +0000 (18:11 +0000)]
Merge branch 'ebassi/cross-bundle' into 'master'
build: Don't use ld when cross-compiling
See merge request GNOME/gtk!4121
Emmanuele Bassi [Thu, 4 Nov 2021 13:41:35 +0000 (13:41 +0000)]
build: Don't use ld when cross-compiling
We can't guarantee anything on the target toolchain, in that case.
Matthias Clasen [Thu, 4 Nov 2021 11:06:44 +0000 (11:06 +0000)]
Merge branch 'taozuhong-master-patch-22982' into 'master'
Make dialog content_area box as vertical, keep compatibility with GTK3
See merge request GNOME/gtk!4119
TAO ZUHONG [Thu, 4 Nov 2021 08:25:03 +0000 (08:25 +0000)]
Update gtk/ui/gtkdialog.ui
TAO ZUHONG [Thu, 4 Nov 2021 08:23:04 +0000 (08:23 +0000)]
Make dialog content_area box as vertical, keep compatibility with GTK3
Matthias Clasen [Thu, 4 Nov 2021 01:58:56 +0000 (01:58 +0000)]
Merge branch 'listview-sink-adjustment' into 'master'
listbase: Sink adjustments
Closes #4403
See merge request GNOME/gtk!4117
Matthias Clasen [Thu, 4 Nov 2021 01:19:43 +0000 (01:19 +0000)]
Merge branch 'activate-signal-dropdown-combobox' into 'master'
Add activate signal to DropDown and ComboBox
See merge request GNOME/gtk!3935
Matthias Clasen [Thu, 4 Nov 2021 01:15:31 +0000 (01:15 +0000)]
Merge branch 'reftest-no-blink' into 'master'
testsuite: Set GDK_DEBUG unconditionally
See merge request GNOME/gtk!4116
Matthias Clasen [Thu, 4 Nov 2021 01:08:46 +0000 (21:08 -0400)]
listbase: Sink adjustments
gtk_adjustment_new returns floating objects.
Sink them.
Fixes: #4403
Matthias Clasen [Thu, 4 Nov 2021 00:43:01 +0000 (20:43 -0400)]
reftest: No blinking, please
Blinking cursors aren't helpful when we want to
compare renderings pixel-by-pixel. Turn them off.
Matthias Clasen [Thu, 4 Nov 2021 00:40:22 +0000 (20:40 -0400)]
reftest: Stop setting GDK_RENDERING
That environment variable isn't used anymore.
Matthias Clasen [Thu, 4 Nov 2021 00:39:33 +0000 (20:39 -0400)]
testsuite: Set GDK_DEBUG unconditionally
The default-settings key works in non-debug builds
too, nowadays.
Maximiliano Sandoval R [Sun, 3 Oct 2021 16:00:23 +0000 (18:00 +0200)]
combo_box: Use mnemonic_activate on override
This is changing the existing behavior where the mnemonic activation
would just grab the focus of the button, this was the behavior in GTK 3.
Maximiliano Sandoval R [Fri, 10 Sep 2021 13:42:47 +0000 (15:42 +0200)]
dropdown: Make DropDown activatable
The activation is simply forwarded to the button
within.
Maximiliano Sandoval R [Fri, 10 Sep 2021 13:42:15 +0000 (15:42 +0200)]
combobox: Make combo box activatable
The activation is simply forwarded to the button
within.
Benjamin Otte [Wed, 3 Nov 2021 22:22:30 +0000 (22:22 +0000)]
Merge branch 'wip/otte/for-master' into 'master'
egl: Set the draw buffer to GL_BACK_LEFT
Closes #4402
See merge request GNOME/gtk!4114
Benjamin Otte [Wed, 3 Nov 2021 21:53:31 +0000 (22:53 +0100)]
macos: Fix return value
Benjamin Otte [Wed, 3 Nov 2021 21:51:39 +0000 (22:51 +0100)]
gdk: #if => #ifdef
Makes compilers happy
Benjamin Otte [Wed, 3 Nov 2021 18:49:08 +0000 (19:49 +0100)]
gl: Use GL_BACK_LEFT
The spec doesn't allow GL_BACK, but many drivers do. Use the
spec-accepted equivalent instead.
Fixed #4402